1f68a7ad97561b8eb1f57618d6a7f5364e5ec989,opennms-model/src/main/java/org/opennms/netmgt/model/topology/BridgeTopology.java,BridgeTopology,parseBFTEntry,#BridgeTopologyLinkCandidate#,266
Before Change
linkcandidate.getBridgeTopologyPort().getNodeid(),linkcandidate.getBridgeTopologyPort().getBridgePort());
linkcandidate.removeMacs(topologyLinkCandidate.getMacs());
linkcandidate.addTarget(topologyLinkCandidate.getBridgeTopologyPort().getNodeid());
linkcandidate.setRole(BridgePortRole.BACKBONE);
topologyLinkCandidate.setRole(BridgePortRole.DIRECT);
continue;
}
After Change
// regola intersezione nulla non faccio niente
// regola intersezione nulla non faccio niente
if (linkcandidate.getBridgeTopologyPort().getNodeid().intValue() ==
topologyLinkCandidate.getBridgeTopologyPort().getNodeid().intValue()) {
LOG.info("parseBFTEntry: rule 00: same node: do nothing");
continue;
}
if (linkcandidate.intersectionNull(topologyLinkCandidate)) {
LOG.info("parseBFTEntry: rule 0: intesection null: do nothing");
continue;
}
if (linkcandidate.getRole() == BridgePortRole.BACKBONE) {
LOG.info("parseBFTEntry: rule 1: found old backbone port: setting new port to DIRECT");
linkcandidate.removeMacs(topologyLinkCandidate.getMacs());
topologyLinkCandidate.setRole(BridgePortRole.DIRECT);
continue;
}
if (topologyLinkCandidate.getRole() == BridgePortRole.BACKBONE) {
LOG.info("parseBFTEntry: rule 2: found new backbone port: setting old port to DIRECT");
topologyLinkCandidate.removeMacs(linkcandidate.getMacs());
linkcandidate.setRole(BridgePortRole.DIRECT);
continue;
}
// regola della dipendenza assoluta direzione avanti
if (linkcandidate.strictContained(topologyLinkCandidate)) {
LOG.info("parseBFTEntry: rule 3: old contained in new: adding target {} to node {}, backbone port {}", linkcandidate.getBridgeTopologyPort().getNodeid(),
topologyLinkCandidate.getBridgeTopologyPort().getNodeid(),topologyLinkCandidate.getBridgeTopologyPort().getBridgePort());
topologyLinkCandidate.setRole(BridgePortRole.BACKBONE);
topologyLinkCandidate.removeMacs(linkcandidate.getMacs());
topologyLinkCandidate.addTarget(linkcandidate.getBridgeTopologyPort().getNodeid());
linkcandidate.setRole(BridgePortRole.DIRECT);
continue;
}
// regola della dipendenza assoluta direzione dietro
if (topologyLinkCandidate.strictContained(linkcandidate)) {
LOG.info("parseBFTEntry: rule 4: new contained in old: adding target {} to node {},backbone port {}", topologyLinkCandidate.getBridgeTopologyPort().getNodeid(),
linkcandidate.getBridgeTopologyPort().getNodeid(),linkcandidate.getBridgeTopologyPort().getBridgePort());
linkcandidate.setRole(BridgePortRole.BACKBONE);
linkcandidate.removeMacs(topologyLinkCandidate.getMacs());
linkcandidate.addTarget(topologyLinkCandidate.getBridgeTopologyPort().getNodeid());
topologyLinkCandidate.setRole(BridgePortRole.DIRECT);
continue;
}
if (linkcandidate.getLinkPortCandidate() == null) {
LOG.info("parseBFTEntry: rule 5: no suitable data: setting candidate each other");
linkcandidate.setLinkPortCandidate(topologyLinkCandidate.getBridgeTopologyPort());
topologyLinkCandidate.setLinkPortCandidate(linkcandidate.getBridgeTopologyPort());
continue;
}
if (linkcandidate.getBridgeTopologyPort().getNodeid().intValue() == topologyLinkCandidate.getLinkPortCandidate().getNodeid().intValue()
&& linkcandidate.getBridgeTopologyPort().getBridgePort().intValue() != topologyLinkCandidate.getLinkPortCandidate().getBridgePort().intValue()) {
LOG.info("parseBFTEntry: rule 6: old contained in new: adding target {} to node {}, backbone port {}", linkcandidate.getBridgeTopologyPort().getNodeid(),
topologyLinkCandidate.getBridgeTopologyPort().getNodeid(),topologyLinkCandidate.getBridgeTopologyPort().getBridgePort());
topologyLinkCandidate.setRole(BridgePortRole.BACKBONE);
topologyLinkCandidate.removeMacs(linkcandidate.getMacs());
topologyLinkCandidate.addTarget(linkcandidate.getBridgeTopologyPort().getNodeid());
linkcandidate.setRole(BridgePortRole.DIRECT);
linkcandidate.setLinkPortCandidate(null);
continue;
}
if (topologyLinkCandidate.getBridgeTopologyPort().getNodeid().intValue() == linkcandidate.getLinkPortCandidate().getNodeid().intValue()
&& topologyLinkCandidate.getBridgeTopologyPort().getBridgePort().intValue() != linkcandidate.getLinkPortCandidate().getBridgePort().intValue()) {
LOG.info("parseBFTEntry: rule 7: new contained in old: adding target {} to node {},backbone port {}", topologyLinkCandidate.getBridgeTopologyPort().getNodeid(),
linkcandidate.getBridgeTopologyPort().getNodeid(),linkcandidate.getBridgeTopologyPort().getBridgePort());
linkcandidate.setRole(BridgePortRole.BACKBONE);
linkcandidate.removeMacs(topologyLinkCandidate.getMacs());
linkcandidate.addTarget(topologyLinkCandidate.getBridgeTopologyPort().getNodeid());